// #ifndef _ODOMETRY_H_
// #define _ODOMETRY_H_

#pragma once

#include <Eigen/Core>
#include <Eigen/Dense>
#include <iostream>
#include <mutex>
#include <string>
#include <thread>
#include <vector>
#include "serialapp.h"
using namespace hitcrt;

struct Gydata
{
    Eigen::Vector3f Tran;
    // float pitch;
    float yaw;
    float sectime;
};


class Gyodometry
{
public:
    // Gyodometry();
    static Gyodometry& GetInstance()
    {
        static Gyodometry instance;
        return instance;
    }
    void dataCL();
    void dataCB(Gydata& inputdata);

private:
    Gydata m_Tdata;
    float m_sectime0;
    std::mutex m_data_mu1;
    hitcrt::SerialApp::RECEIVE_FLAG m_flag;
};

// #endif